﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Hive.Core.Model.Commands
{
    /// <summary>
    /// Describes the result of a command.
    /// </summary>
    public enum CommandExitCode
    {
        /// <summary>
        /// The command completed successfully.
        /// </summary>
        /// <value>0</value>
        Success = 0,

        /// <summary>
        /// The command failed.
        /// </summary>
        /// <value>1</value>
        Failure = 1,

        /// <summary>
        /// The command was canceled.
        /// </summary>
        /// <value>2</value>
        Canceled = 2,

        /// <summary>
        /// The command was provided with invalid arguments.
        /// </summary>
        /// <value>3</value>
        InvalidArguments = 3,

        /// <summary>
        /// The command terminated due to a fatal exception.
        /// </summary>
        /// <value>4</value>
        Exception = 4,
    }
}
